Photoshop脚本入门(二)

您所在的位置:网站首页 Photoshop 插件 读取图层 Photoshop脚本入门(二)

Photoshop脚本入门(二)

2023-05-28 00:05| 来源: 网络整理| 查看: 265

 JavaScript脚本参考是基于DOM文档对象模型的资料

一、Adobe Photoshop CC 提供JavaScript支持

本参考资料描述了Adobe®Photoshop®CC®JavaScriptTMtype库中的对象和方法。一个配套的文档, Photoshop CC脚本指南,描述了基本的脚本概念和Photoshop对象模型。本文档提供了Photoshop对 象模型的参考细节,以及关于javascript特定特性的附加信息。 Adobe Photoshop CC使用了ExtendScript,这是Adobe对JavaScript的扩展实现。有关更多信息,请参 见adobephotoshopcc.com中的JavaScript支持。

本书包括以下章节: ●本介绍介绍了adobephotoshopcc中的脚本支持,并列出了对自上次发布以来的JavaScript接口。 ● JavaScript对象引用,为所有Photoshop DOM对象提供完整的引用命令。 ●脚本常量,列出Photoshop类型库中使用的所有枚举。 要使JavaScript文件被Photoshop识别为有效的脚本文件,它必须使用a.js或a.jsx扩展。

在Mac OS上,脚本使用两个扩展函数的方式没有区别。在Windows上,如果脚本文件是在Photoshop 中打开的,那么使用.js和.jsx没有区别。但是,如果脚本是通过双击启动的,则扩展名为.js的脚本是 使用Microsoft JScript引擎解释,无法启动adobephotoshopcc。最好使用.jsx扩展,因为它使用 ExtendScript引擎解释脚本。

所有Adobe Creative Cloud应用程序,包括Adobe Photoshop CC,都使用ExtendScript,这是Adobe对 JavaScript的扩展实现。扩展脚本文件由。 jsx扩展。 ExtendScript提供了所有标准的JavaScript特性, 以及附加的特性和实用程序,比如: ●调试环境(ExtendScript工具包) ●本地化工具 ●允许组合脚本并将其指向特定应用程序的工具 ●独立于平台的文件和文件夹表示

许多JavaScript对象和方法使用ExtendScript中定义的对象,比如File对象、 Folder对象和UnitValue对 象。因此,使用。脚本文件的jsx扩展名更可取。

有关这些特性和其他特性的详细信息,请参阅javascript工具指南。本文档在以下地点安装了创造性 云应用程序: ● In Windows:C:\Program Files\Adobe\Adobe Utilities\ExtendScript Toolkit CC\SDK ● In Mac OS:Applications/Utilities/Adobe Utilities/ExtendScript Toolkit CC/SDK 本文档和ExtendScript Tookit的最新版本也可以从Adobe下载开发中心,http://www.adobe.com/devnet/.

1.执行脚本 adobephotoshopcc界面包含一个Scripts菜单(文件>脚本),它提供了对java脚本的快速、简便访问。 脚本可以直接作为菜单项列出,当您选择它们时运行它们,或者您可以导航到并运行文件系统中的 任何JavaScript。 如果adobephotoshopcc在执行脚本时遇到错误,它将显示错误消息。

2.安装脚本 要在Scripts菜单中安装JavaScript,请将其放入Scripts文件夹(Photoshop CC/Presets/ Scripts)。 “脚本”文 件夹中脚本的名称将显示在脚本菜单。可以在scripts菜单中安装任意数量的脚本。 运行adobe photoshop cc时添加到Scripts文件夹中的脚本将不会出现在脚本中菜单,直到下一次启动应用程序。 在scripts文件夹和子文件夹中找到的所有脚本都显示在File> scripts的顶层菜单。子文件夹的添加不会向Scripts菜单中添加层次结构。

3.执行其他脚本 通过(Files> Scripts > Browse)允许您执行Scripts文件夹中没有安装的脚本。还可以使用Browse选择上 次启动应用程序后安装在scripts文件夹中的脚本。 选择Browse将显示一个文件浏览器对话框,该对话框允许您选择要执行的脚本文件。只有 .js或.jsx文件显示在browse对话框中。当您选择一个脚本文件时,它将以已安装脚本的相同方式执 行。

4.启动脚本 在启动时, adobe photoshop cc将执行在启动文件夹中找到的所有.jsx文件。 ●在Windows上,用户定义脚本的启动文件夹是:C:\Program Files\Common Files\Adobe\Startup Scripts CC\Adobe Photoshop ●在Mac OS上,用户定义脚本的启动文件夹为::~/Library/Application Support/Adobe/Startup Scripts CC/Adobe Photoshop 如果一个脚本只打算由adobe photoshop cc执行,它必须包含以下代码:

if( BridgeTalk.appName == "photoshop" ) { //continue executing script }

有关更多细节,请参见javascript工具指南。

5.对象模型的使用和命名 JavaScript API遵循JavaScript命名约定,即所有类(对象类型)都以大写字母开头,并具有混合大小写。 通常,在JavaScript中,您使用新的操作符实例化类:new ClassName(); 然而,在Photoshop对象模型中,通常没有必要这样做。主要对象类型被回收到集合类中;例如,文 档集合对象中包含文档对象列表。然后,通过对象层次结构中容器中的相应集合属性访问集合对 象。 例如,所有打开文档的集合都包含在顶级应用程序对象中。你可以通过全局变量应用程序访问它, 或者直接在顶层引用它的属性:app.documents[0] // get the first loaded documented documents[0] // this is the same 集合属性具有与集合对象相同的名称,但以小写字母开头。例如,一个 Document 包含 LayerSets, aLayerSet包含ArtLayers。要访问集合中的一个ArtLayer对象:var myLayer = activeDocument.layerSets[0].artLayers[0]; 在本例中,可以将集合视为数组,这对于迭代非常有用。它们还提供了创建所包含对象的方法,并 按名称访问它们:var newLayer = activeDocument.artLayers.add(); // Create a new ArtLayer object newLayer.name = "My Layer"; // name it for later reference ... var layerRef = activeDocument.artLayers.getByName("My Layer"); 一些对象,比如应用程序中包含的字体对象。字体集合是由应用程序创建的,而不是由脚本创建 的。 您的脚本确实使用JavaScript new操作符来创建helper对象,比如那些封装了一组以特定格式打开或 保存文档的选项的对象:var opts = new PDFOpenOptions(); opts.page = 10; app.open(myPDFFile, opts);

二、JavaScript对象引用

Photoshop对象(Adobe®Photoshop®CC的JavaScript类型库)在本章中以表格形式出现。给出了几个对 象模型类的示例代码,以帮助说明对象类的语法和用法。

1.对象描述 对象属性和方法在每个对象的单独表中进行描述。以下部分描述这些描述中使用的约定。

2.属性符号 对象的属性表列出了以下内容: ●定义在每个对象中的属性。 ●每个属性的值类型。 当值类型是常量或其他对象时,值是指向该对象清单的超文本链接常数或对象。 ●属性的输入状态:只读或读写。 ●解释该属性功能的描述。

属性值类型描述displayDialogsDialogModes读写。应用程序的对话模式,它控制运行脚本时应该显示什 么类型的对话框。

对于常量,如示例中的displayDialogs模式,单击链接可转到显示允许值的表。常量由对象表示, 允许的值是这些对象的属性。以ConstantName.VALUE的形式指定一个常量值。例如: app.displayDialogs = DialogModes.ERROR;

3.方法符号 对象的方法表列出了以下内容: ●方法名。 ●参数列表。 ●参数值类型,行上对应每个参数。 ●返回值类型 ●描述方法的功能,如果需要,进一步描述参数。

方法参数类型返回类型描述crop (bounds [, angle] [, width] [, height])array of 4 UnitValue number UnitValue UnitValueCrops裁剪. bounds参数是裁剪后区域坐 标外的一个数组, [left,top, right, bottom].

当参数类型或返回值是常量或其他对象时,该值是指向该常量或对象列表的超文本链接。 参数可以是必需的,也可以是可选的。表中可选参数用方括号表示([])。在本例中,需要第一个参数 bounds。其余参数都是可选的。

您必须为每个必需的参数传递一个值。如果没有剩余的值要传递,可以省略可选参数;但是,如果您 希望为任何不是最后指定的可选参数使用默认值,请将undefined作为占位符传递。您必须按照列出 的顺序输入值,以便JavaScript编译器知道您输入的是哪个值。

例如,下面只传递所需的参数(使用以前定义的变量作为边界区域):app.activeDocument.crop( myRegion ); 下面跳过角度参数,指定宽度值,并省略最后的高度值:var myWidth = new UnitValue( "500 pixels" ); app.executeAction( myRegion,undefined,myWidth );

三、其他对象介绍

其他对象不再具体介绍,详情请查看脚本文档

 

红色为需要重点掌握的对象



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3